Page({
    data: {
      inputValue: '',
      // messages 是一个对象，键为用户名，值为该用户的消息列表
      messages: {},
      toView: '',
      sender: '', // 当前聊天室的发送者
    },
  
    onLoad: function(options) {
      this.setData({
        sender: options.name || '', // 从参数中获取发送者信息
      });
      this.loadMessages();
    },
  
    onShow: function() {
      this.loadMessages();
    },
  
    onUnload: function() {
      this.saveMessages();
    },
  
    loadMessages: function() {
      // 页面显示时尝试从本地存储中获取当前用户的聊天记录
      const storedMessages = wx.getStorageSync(`chatMessages_${this.data.sender}`) || [];
      this.setData({
        messages: {
          [this.data.sender]: storedMessages,
        },
      });
    },
  
    saveMessages: function() {
      // 页面关闭时将当前用户的聊天记录保存到本地存储
      wx.setStorageSync(`chatMessages_${this.data.sender}`, this.data.messages[this.data.sender] || []);
    },
  
    inputHandler: function(e) {
      this.setData({
        inputValue: e.detail.value,
      });
    },
  
    sendMessage: function() {
      if (this.data.inputValue.trim() === '') {
        return;
      }
  
      const newMessage = {
        sender: '我',
        content: this.data.inputValue.trim(),
      };
  
      const sender = this.data.sender;
      const messages = this.data.messages;
  
      // 如果该用户还没有消息列表，创建一个空数组
      if (!messages[sender]) {
        messages[sender] = [];
      }
  
      // 将新消息添加到该用户的消息列表中
      messages[sender].push(newMessage);
  
      this.setData({
        messages: messages,
        inputValue: '',
        toView: `msg-${messages[sender].length - 1}`,
      });
  
      this.saveMessages();
    },
  });
  